In ad hoc networking environments, networks can be created by different devices at different times, meaning that without receiving some information from the network, it is impossible for a new device to determine what existing device is acting to coordinate a network, or exactly how the timing of the network is synchronized. The choice of coordinating device and the particular timing choices are made when a network first starts, and generally cannot be predicted without information from the network.
In a typical ad hoc networking environment, when a new device desires to communicate with other nearby devices, it will perform one of two tasks: joining an existing network, or creating a network of its own with itself as a network coordinator. In either case, however, this requires finding other devices that also desire to communicate with the new device. If joining an existing network, the new device will need to find the device currently coordinating the existing network. If creating a new network, the device will need to find at least one other existing device desiring to join the new network and willing to accept the new device as a network coordinator. In both cases the new device will have to synchronize its timing to that of the existing device.
When finding an existing network, the new device must first listen to a desired channel until it hears a signal identifying the existing network, e.g., a periodic control signal that provides network information. In one embodiment this identifying signal could be a beacon signal from a network coordinator. Based on the new device's knowledge of general network operation, the timing of the network identifying signal, and information contained in the network identifying signal, the new device can then make an association request, asking to join the existing network. The network coordinator of the existing network will process this association request and provide the new device with instructions to join the network.
When starting a new network, the new device must generate its own signals identifying the new network, e.g., its own beacon signals, and wait to receive association requests from nearby devices desiring to join the new network. If the new device receives any such association requests, the new device can process them and accept nearby devices into the new network.
However, any given device has no information regarding the identity of any of the nearby devices, nor does it have any information as to how the timing of any existing devices are set. As a result, a device trying to identify the existence and timing of an existing network or device will have to listen for the device or network long enough to ensure that it hears the proper synchronization information. This is at odds with power saving modes that many devices have, which may have low duty cycles and long off-times.